Amazon RDSに繋がらなかった時の対処法(MySQLWorkbench とQuickSight)
前回の記事で、MySQLを立ててデータを入れてQuickSightから繋ぐということをやったのですが、実はここで2回ほどつまづきました。
作ったDBに、ローカルMySQLWorkbenchからもQuickSightからも繋がらなかったのです。
結論を先に書いておくと、私の場合のこの原因は二つとも同じで、「セキュリティーグループ」でした。
ローカルMySQLWorkbenchからDBに繋がらない
私に起こった現象は、
nc -zv 【RDS endpoint】 【port number】
という状態でした。
↓MySQLWorkbenchのテスト接続は成功している
↓コマンドで確認すると問題なし
↓でも、繋がらない!
ローカルMySQLWorkbenchからDBに繋がらない時の対処法
私の場合の原因は、セキュリティーグループでした。自分のローカルからDBに繋ごうとしているので、これを許可する登録が必要でした。
DBのセキュリティーグループのインバウンドルールにマイIPを登録したところ、接続成功しました。 (IPはちょこちょこ変わるので、本当はここは見直し必要だと思いますが、ひとまずマイIPで。)
この設定にしてから、MySQLWorkbenchを再起動すると接続成功しました。
もしこれでもうまくいかなかった場合は、下記に詳細のトラブルシューティング手順がありますので、こちらをご確認ください。
Amazon QuickSightからMySQLに繋がらない
これまた原因はセキュリティーグループです。ローカルからDBに繋ぐのに登録が必要なのなら、QuickSightからDB繋ぐのにも登録が必要になるのが当たり前ですね、はい。(同じつまづきを2回も繰り返してしまいました。)
下記手順に詳しいやり方がのっておりますので、QuickSightからDB繋ぐためのセキュリティーグループを作って、それをDBインスタンスに登録してください。
ふりかえり
ハンズオンの資料では、さらっと「できた」ことにされてしまう接続ですが、どうやら初めての人には、よくあるつまづきやすいポイントのようです。
クラスメソッドに入社するまで、QuickSight以外はほぼ触ったことがなく、自分でDBを立てたこともなかった(立てられたDBを使うことしかなかった)ので、やってみて初めて気がつくことが多々ありました。